load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")

go_library(
    name = "go_default_library",
    srcs = [
        "ecies_aead_hkdf_private_key_manager.go",
        "ecies_aead_hkdf_public_key_manager.go",
        "hybrid.go",
        "hybrid_decrypt_factory.go",
        "hybrid_encrypt_factory.go",
        "hybrid_key_templates.go",
        "register_ecies_aead_hkdf_dem_helper.go",
    ],
    importpath = "github.com/google/tink/go/hybrid",
    visibility = ["//visibility:public"],
    deps = [
        "//aead:go_default_library",
        "//core/cryptofmt:go_default_library",
        "//core/primitiveset:go_default_library",
        "//core/registry:go_default_library",
        "//hybrid/subtle:go_default_library",
        "//keyset:go_default_library",
        "//proto:aes_ctr_hmac_aead_go_proto",
        "//proto:aes_gcm_go_proto",
        "//proto:common_go_proto",
        "//proto:ecies_aead_hkdf_go_proto",
        "//proto:tink_go_proto",
        "//tink:go_default_library",
        "@com_github_golang_protobuf//proto:go_default_library",
    ],
)

go_test(
    name = "go_default_test",
    srcs = [
        "ecies_aead_hkdf_hybrid_decrypt_test.go",
        "ecies_aead_hkdf_hybrid_encrypt_test.go",
        "hybrid_factory_test.go",
        "hybrid_key_templates_test.go",
        "hybrid_test.go",
        "register_ecies_aead_hkdf_dem_helper_test.go",
    ],
    embed = [":go_default_library"],
    deps = [
        "//aead:go_default_library",
        "//hybrid/subtle:go_default_library",
        "//keyset:go_default_library",
        "//mac:go_default_library",
        "//proto:common_go_proto",
        "//proto:ecies_aead_hkdf_go_proto",
        "//proto:tink_go_proto",
        "//signature:go_default_library",
        "//subtle/random:go_default_library",
        "//testkeyset:go_default_library",
        "//testutil:go_default_library",
    ],
)
